package com.jiazimall.commodity;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

/**
 * 1.逻辑删除
 * 1）、配置全局的逻辑删除规则 在配置文件中
 * 2）、配置逻辑删除的组件Bean
 * 3）、给Bean加上逻辑删除注解@TableLogic
 */

/**
 * 数据校验 使用JSR303
 * 1）、给Bean添加校验注解
 * 2）、在controller层使用@Valid开启验证功能
 * 3）、给校验的Bean后紧跟一个BingdingResult可以得到校验的结果（我这里使用的是全局异常处理）
 * 4）、分组校验 场景 新增和修改需要不同的验证 例如新增时不需要id修改时需要  id字段会使用@Null和@NotNull注解
 *
 * @NotNull(message = "修改必须指定品牌id",groups = {UpdateGroup.class})
 * @Null(message = "新增不能指定id",groups = {AddGroup.class})
 * @TableId private Long brandId;
 * 给校验注解标注什么情况下进行校验
 * 在controller 使用@Validated
 * 5）、自定义校验功能
 *   1.编写一个自定义校验注解
 *   2.编写一个自定义校验器
 *   3.关联自定义校验器和自定义注解
 */
@EnableDiscoveryClient
@SpringBootApplication
public class CommoditySpringbootApplication {
    public static void main(String[] args) {
        SpringApplication.run(CommoditySpringbootApplication.class, args);
    }
}
